home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-01-23 | 45.7 KB | 1,224 lines |
- Documento de Linux Sound HOWTO
- Jeff Tranter, Jeff_Tranter@Mitel.COM
- v1.10, 3 December 1994
- Traducido por Luis Hernández
- Sábado, 20 Enero de 1.996
-
- Este documento describe el soporte de sonido para Linux. Se enumeran
- las tarjetas de sonidos soportadas, se describe como configuar los
- drivers del núcleo, y las respuestas a las preguntas más frecuentes.
- El propósito es ayudar a los nuevos usuarios y reducir el tráfico de
- mensajes en los grupos de news.
-
-
- 1. Introducción
-
-
- Este es el documento de Linux Sound HOWTO. Se ha propuesto como una
- referencia rápida que abarca todo lo que vd. necesita para conocer como
- instalar y configurar el soporte de sonido bajo Linux. Las preguntas
- que se realizan frecuentemente, son contestadas en este documento,
- y se dan referencias relativas a otras fuentes de información sobre
- una variedad de temas relativos a la generación de sonido por ordenador
- y música.
-
- El radio de acción está limitado a los aspectos de las tarjetas de
- sonido bajo el sistema Linux. Para obtener más información sobre
- tarjetas de sonido, y música y sonido generados por ordenador, lea
- Otras Fuentes de Información.
-
-
- 1.1. Agradecimientos
-
-
- La mayor parte de la información que se proporciona en este documento
- proviene de los ficheros Readme, del código fuente del driver de sonido,
- escrito por Hannu Savolainen (hannu@voxware.pp.fi). Gracias a Hannu y
- a las personas que han desarrollado los drivers del núcleo de sonido y
- sus utilidades.
-
- Gracias al paquete Linuxdoc-SGML, este HOWTO está disponible en varios
- formatos, incluyendo hipertexto HTML (Mosaic), PostScript, y en ASCII,
- todos generados desde un mismo fichero fuente.
-
-
- 1.2. Cronologia de las versiones
-
-
-
- Versión 1.1
- primera versión; anunciada en el canal SOUND de actividades de
- Linux.
-
- Versión 1.2
- actualización de menor importancia; primera versión disponible
- en los sites.
-
- Versión 1.3
- convertida a SGML; ahora disponible en varios formatos utilizando
- las herramientas de Matt Welsh's Linuxdoc-SGML; con el aspecto
- adecuado al nuevo formato, sólo menores cambios en su contenido.
-
- Versión 1.4
- menor tweaking de SGML; añade respuesta en las incompatibles
- adaptadores PAS16 y Adaptec1542A.
-
- Versión 1.5
- versión del driver de sonido 2.5a en la distribución del kernel
- 1.1 ; soporte para GUS-MAX; y cambios sin importancia.
-
- Versión 1.6
- Se añade el mensaje de error "no hay espacio en el dispositivo"
- ("no space on device"); añade nota que la Guia de Hacker's está
- en un directorio "oculto"; añade preguntas en modo bidirecional;
- información de errores "dispositivo ocupado" ("device busy");
- y otros cambios sin importancia.
-
- Versión 1.7
- Se añade información de ASP y AWE32; VoxWare 2.9 está disponible;
- respuesta a la pregunta sobre la utilización de la IRQ2;
- referencias a los HOWTO de Sonido y SCSI.
-
- Versión 1.8
- Se añaden preguntas a los errores bajo DOS; algunas cambios sin
- importancia se actualizan a la versión 2.90 del driver de sonido;
- información sobre DOOM; respuesta para la reducción de ruido.
-
- Versión 1.9
- preguntas sobre grabación y tarjetas clónicas.
-
- Versión 1.10
- Se menciona que HOWTO está disponible en WWW, como copia impresa,
- y las versiones; información de los conflictos de DMA con el
- driver de la cinta QIC; información de Sound Galaxy NX Pro y
- Logitech BusMouse.
-
-
- 1.3. Nuevas versiones de este documetnos
-
-
- Nuevas versiones de este documento, que periodicamente se anuncian
- en comp.os.linux.announce. También se actualizan en los diferentes
- ftp anonymous ftp que guardan la información incluida en
- sunsite.unc.edu:/pub/Linux/docs/HOWTO.
-
- Versiones hipertextos de este y otros HOWTOs de Linux están accesibles
- en muchos World-Wide-Web (WWW). Puede obtener una copia impresa de
- los diferentes vendedores.
-
- Si su idioma nativo no es el Inglés, puede obtener una traducción de
- este documento (traducciones de Francés y Japonés están en desarrollo).
-
-
- 1.4. Nuevas informaciones
-
-
- Si vd. tiene alguna sugerencia, corrección, ó comentario del HOWTO,
- por favor enviela al autor y yo intentaré incorporarla en la nueva
- versión.
-
- Si vd. tiene problemas, relativos al sonido, y no obtiene respuesta
- en este HOWTO, envieme un mensaje por correo electrónico, e intentaré
- ayudarle.
-
-
- 1.5. Otras Fuentes de Información
-
-
- La Guia del Usuario de Sonido en Linux abarca, con muchos más detalles,
- todos los aspectos visibles de la utilización de sonido bajo Linux
- (aproximadamente 40 páginas). Si vd. está interesado en el tema del
- sonido bajo Linux, puede obtener este documento. La versión actual es
- ALPHA 0.1, y está disponible en tsx-11.mit.edu en el directorio
- /pub/linux/ALPHA/LDP. Continuaré manteniendo el Sound-HOWTO
- como una guia concisa para los usuarios que deseen tener sonido y
- ejecutarlo, ó enterarse de lo que hace falta, sin tener que leerse la
- Guia Completa del Usuario.
-
- Si vd. tiene una tarjeta de sonido que tenga soporte para CD-ROM ó
- interface SCSI, le será muy útil leer la información adicional de
- Linux SCSI HOWTO y Linux CD-ROM HOWTO.
-
-
- Hannu Savolainen ha escrito una versión de la Guia de Hackers de
- VoxWare. La última versión es la 2, y puede encontrarla en nic.funet.fi
- en /pub/OS/linux/ALPHA/sound.
-
- Las siguientes FAQs se comunican regularmente en los grupos de noticias
- de usenet en news.announce, y además se archivan en los sites
- rtfm.mit.edu en el directorio /pub/usenet/news.answers:
-
-
- PCsoundcards/generic-faq (FAQ sobre tarjetas de sonido para PCs)
- PCsoundcards/soundcard-faq (comp.sys.ibm.pc.soundcard FAQ)
- PCsoundcards/gravis-ultrasound/faq (Gravis UltraSound FAQ)
- audio-fmts/part1 (Descripciones del formato de ficheros de Audio)
- audio-fmts/part2 (Descripciones del formato de ficheros de Audio)
-
-
-
- También las FAQs enumeran los diferentes productos especificados en las
- listas de correo y en los sites. Los siguientes grupos de news discuten
- sobre sonido y/o música publicados:
-
-
- alt.binaries.sounds.* (grupos varios para ficheros de sonidos)
- alt.binaries.multimedia (emiten ficheros Multimedia)
- alt.sb.programmer (temas de programación de la Soundblaster)
- comp.multimedia (temas Multimedia)
- comp.music (Teoría sobre música por ordenador e investigación)
- comp.sys.ibm.pc.soundcard.* (grupos sobre tarjetas de sonido IBM PC)
-
-
-
- La lista de correo sobre los activistas de Linux tienen un canal de
- SONIDO. Para enterarse de como unirse a esta lista, envie un mensaje a
- linux-activists-request@joker.cs.hut.fi.
-
- Los ficheros Readme, Readme.linux, y CHANGELOG incluidos con el código
- fuente del driver de sonido contiene información útil acerca de los
- drivers para las tarjetas de sonido. Estos ficheros los puede localizar
- en /usr/src/linux/drivers/sound.
-
- El Mapa de Software de Linux (LSM) es una referencia de incalculable
- valor para localizar software de Linux. Buscando en el LSM palabras
- como 'sonido' nos ayudará a identificar las aplicaciones relativas al
- hardware de sonido. El sistema LSM puede localizarse en varios sitios
- con FTP anonymous, incluynedo sunsite.unc.edu:/pub/Linux/docs/LSM.gz.
-
-
- 1.6. Información de la versión
-
-
- Al tiempo que se escriben estas líneas, la última versión del driver de
- sonido era la 2.90-2 y estaba incluido en el núcleo de la versión 1.1.50
- de Linux (y será el mismo en Linux 1.2.0). Esta es una versión beta
- del próximo driver versión 3.0, que tiene nuevas características y que
- no están en las versiones anteriores, alguna de las cuales se inutilizarán,
- Hasta que aparezca, la versión 2.90 es la más fiable, y si desea un driver
- más estable, utilice el driver de sonido de la versión 2.5a, suministrado
- en el kernel de las revisiones de 1.1.10 a 1.1.30.
-
- El autor del driver de sonido, Hannu Savolainen, sigue trabajando en
- nuevas versiones del driver de sonido, para que puedan incluirse en la
- distribución estándar del núcleo de Linux.
-
-
-
- 2. Hardware de sonido soportado
-
- 2.1. Tarjetas de Sonido
-
-
- Las siguientes tarjetas de sonido están reconocidas por el núcleo de Linux:
-
-
- o Interface de Roland MPU-401 MIDI
-
- o Tarjeta AdLib
-
- o SoundBlaster (versión 1 y 2) y compatibles, incluyendo ThunderBoard
- y ATI Stereo F/X
-
- o SoundBlaster Pro (versión 1 and 2)
-
- o Sound Galaxy NX Pro (modo compatible con SoundBlaster Pro 2.0 y
- soporte para mezcladores especiales)
-
- o SoundBlaster 16
-
- o ProAudioSpectrum 16 (y compatible con Logitech SoundMan 16)
-
- o Advanced Gravis UltraSound (GUS)
-
- o GUS MAX (driver 2.9 y superior)
-
- o Microsoft Sound System (versión 2.9 y superior)
-
- o Personal Sound System (versión 2.9 y superior)
-
- Otras tarjetas de sonido, que afirman ser compatibles con una de las
- tarjetas de sonido soportadas, pueden funcionar si son compatibles a
- nivel de hardware (a nivel de registros). Algunas tarjetas que dicen
- ser compatibles "100% SoundBlaster", en realidad no lo son.
-
- La tarjeta Sound Galaxy NX Pro es compatible SoundBlaster. Cuando
- configure el driver de sonido responda "si" (yes) a la pregunta
- "¿ Quiere soporte para el mezclador de SG NX Pro ?" ("Do you want
- support for the mixer of SG NX Pro") (en versiones anteriores a la 2.9
- debe añadir manualmente #define __SGNXPRO__ al fichero del driver de
- sonido local.h).
-
- Observe que si vd. tiene una Sound Galaxy NX Pro y un Logitech Busmouse,
- debe configurar la tarjeta (utilizando la utilidad SGPFIG) para utilizar
- la dirección base 0x240 para poder manejar su ratón. La SGNXPRO tiene
- un modo compatible Covox Speech Thing que tiene un registro de control
- en la dirección base+0x01C, el cual es la dirección de registro de
- control del Logitech Busmouse, cuando la dirección base de la SGNXPRO
- tiene un valor de 0x220 (gracias a Matti Aarnio (mea@utu.fi) por esta
- información).
-
- El núcleo de Linux tiene soporte para el puerto SCSI, proporcionado en
- algunas tarjetas de sonido (por ejemplo ProAudioSpectrum 16). También
- hay soporte para los dispositivos CD-ROM unidos a los puertos CD-ROM de
- la Soundblaster Pro y SoundBlaster (lea el fichero
- /usr/src/linux/drivers/block/README.sbpcd).
-
- También está disponible un módulo del kernel con soporte para puertos
- joystick, incluidos en algunas tarjetas de sonido.
-
- Tenga en cuenta que el núcleo SCSI, CD-ROM, y los drivers de sonido son
- completamente independientes uno de otro.
-
-
-
-
-
- 2.2. Altavoz del PC
-
-
- Hay disponible un driver de sonido alternativo que no necesita ningún
- hardware adicional; utiliza el altavoz interno del PC. Es en su mayor
- parte software compatible con el driver de la tarjeta de sonido, pero
- como es lógico con una calidad inferior y utiliza mucho más la CPU.
- El resultado variará dependiendo de las características del altavoz.
- Para más información, lea la documentación proporcionada con esta
- versión.
-
- La versión actual es la 0.7, y puede encontrarla en sunsite.unc.edu
- en el fichero /pub/Linux/kernel/patches/console/pcsndrv-0.7.tar.gz.
-
-
- 2.3. Puerto paralelo
-
-
- Otra opción es contruirse un convertidor digital-analógico, utilizando
- el puerto paralelo de la impresora. Esto proporciona una mejor calidad
- de sonido, pero necesitará utilizar más la CPU. El paquete del driver
- de sonido para PC incluye todas las instrucciones necesarias para
- construirse un DAC.
-
-
- 3. Configurando Linux para soporte de Sonido
-
-
- Los pasos siguientes son para tener soporte de sonido:
-
-
- 1. Instale la tarjeta de sonido.
-
- 2. Configure y construya el núcleo para soporte de sonido.
-
- 3. Instale los ficheros de dispositivos.
-
- 4. Compruebe la instalación.
-
-
- 3.1. Instalando la tarjeta de sonido
-
-
- Para instalar la tarjeta, siga las instrucciones suministradas por el
- fabricante. Asegurese de colocar bien los puentes para la IRQ, canal
- DMA, etc. Si no está seguro, utilice los parámetros iniciales (por
- defecto). Si es posible, intente evitar los conflictos que pueda haber
- con otros dispositivos (por ejemplo, tarjetas ethernet, adaptadores host
- SCSI, puertos series y paralelos).
-
-
- 3.2. Configurando el núcleo
-
-
- Si está utilizando un núcleo reciente (0.99pl14 ó posterior), los drivers
- de sonido se incluyen con la versión del kernel. Siga el procedimiento
- usual para construir el núcleo. Cuando ejecute make config, el programa
- de configuración le preguntará las diferentes opciones de la tarjeta de
- sonido. Lea cuidadosamente la información visualizada por este programa.
-
- Si está actualizandose desde una versión anterior del driver de sonido,
- asegurese que los ficheros /usr/include/sys/soundcard.h y
- /usr/include/sys/ultrasound.h son enlaces simbólicos a los ficheros
- correspondientes en /usr/include/linux, ó compruebe que contienen las
- líneas #include <linux/soundcard.h> e #include <linux/ultrasound.h>,
- respectivamente.
-
-
- Es una buena idea leer los ficheros Readme en el directorio
- drivers/sound para saber cual es la última información. El fichero
- CHANGELOG contiene una lista de las mejoras y nuevas características
- realizadas desde la última versión.
-
- Particularmente con el driver 2.90, lea esta documentación para estar
- informado de las incompatibilidades potenciales con las versiones
- antiguas de los drivers de sonido.
-
-
- 3.3. Creando los ficheros de dispositivos
-
-
- La primera vez que se configura el núcleo del driver de sonido,
- necesitará crear los ficheros de los dispositivos de sonido. La forma
- más sencilla para hacer esto es cortar una parte pequeña del shell del
- script, desde el final del fichero Readme.linux (ó posiblemente
- Readme) en el directorio /usr/src/linux/drivers/sound, y ejecutarlo como
- root.
-
- Si las entradas de su dispositivo ya existen, debe asegurarse de que
- son correctos, es decir, /dev/audio debe contener un dispositivo mayor y
- menor de los números 14 y 4. Si no están, ó si vd. tiene duda, ejecute
- el script antes mencionado y reemplacelo con las entradas correctas.
-
- Algunas distribuciones antiguas de Linux suministran scripts de
- instalación que crean ficheros incorrectos de dispositivos de sonido.
- También puede tener un script /dev/MAKEDEV para crear los ficheros
- de dispositivos. Es preferible utilizar el script incluido con el driver
- de sonido ya que siempre se actualizará mejor con las últimas versiones
- de los dispositivos de sonido.
-
-
- 3.4. Comprobando la instalación
-
-
- Ahora siga con los siguiente pasos para verificar el hardware de sonido
- y el software:
-
- 1. Reinicialice con el nuevo kernel.
-
- Siga el procedimiento normal para instalar y rearrancar el nuevo kernel
- (por supuesto, guarde el kernel antiguo por si hay problemas).
-
- 2. Verifique que durante la inicialización del kernel se reconoce la
- tarjeta de sonido.
-
- Compruebe si al encender el sistema aparece un mensaje tal como (si
- el desplazamiento por pantalla es muy rápido para poder leerlo,
- entonces utilice el comando "dmesg"):
-
-
-
- ______________________________________________________________________
- snd2 <SoundBlaster Pro 3.2> at 0x220 irq 5 drq 1
- snd1 <Yamaha OPL-3 FM> at 0x388 irq 0 drq 0
- ______________________________________________________________________
-
-
-
-
- Este debe casar con el tipo de su tarjeta de sonido y sus valores.
-
- El driver también puede visualizar algunos mensajes de error y de
- aviso durante el arranque. Mire bien estos mensajes cuando arranque
- por primera vez, después de configurar el driver de sonido.
-
- Hay varias razones posibles si cuando arranca no detecta la tarjeta de
- sonido:
-
-
- o la configuración del driver es incorrecta y el driver no ha detectado
- su tarjeta en la dirección dada de I/O.
-
- o el driver de sonido se configuró para estar inactivo ó ha arrancado el
- sistema con un kernel antiguo (error de lo más normal).
-
- 3. Compruebe el fichero de dispositivo /dev/sndstat.
-
- Leyendo el estado del fichero de dispositivo del driver de sonido, nos
- proporciona información si el driver de la tarjeta de sonido se ha
- inicializado correctamente. Se mostrará una pantalla parecida a esta:
-
-
-
- ______________________________________________________________________
- % cat /dev/sndstat
-
- Driver Sonido:2.90-2 (Fri Aug 26 20:08:45 EDT 1994 root@fizzbin.ca)
- Config options: 31402
-
- Drivers instalados:
- Type 1: OPL-2/OPL-3 FM
- Type 2: SoundBlaster
-
- Card config:
- SoundBlaster at 0x220 irq 5 drq 1
- OPL-2/OPL-3 FM at 0x388 irq 0 drq 0
-
- PCM devices:
- 0: SoundBlaster Pro 3.2
-
- Synth devices:
- 0: Yamaha OPL-3
-
- Midi devices:
-
- MIDI Timers:
- 0: System Timer
-
- 1 mixer(s) instalado
- ______________________________________________________________________
-
-
-
-
- Si el comando cat visualiza "No hay tal dispositivo" ("No such device"),
- el driver de sonido no está activo en el núcleo. Asegurese que arranca
- con el nuevo kernel compilado.
-
- Si la salida no contiene dispositivos (PCM, Sintetizador ó MIDI), es que
- no se ha detectado su tarjeta de sonido. Verifique que la sección
- "HW config" contiene la información correcta.
-
- 4. Ejecute un fichero de sonido.
-
- Obtenga una muestra de un fichero de sonido, y envielo al dispositivo de
- sonido para hacer un chequeo básico, por ejemplo:
-
-
-
-
-
- ______________________________________________________________________
- % cat endoftheworld >/dev/dsp
- % cat crash.au >/dev/audio
- ______________________________________________________________________
-
-
-
-
- (Asegurese de no omitir el símbolo ">" en el comando anterior).
-
- Puede obtener algunas muestras de sonido del fichero snd-data-0.1.tar.Z.
-
- 5. Verifique la grabación de sonido.
-
- Si su tarjeta posee entrada de sonido, puede hacer un pequeño test de
- la siguiente forma:
-
-
-
- ______________________________________________________________________
- # grabación de 4 segundos de audio desde un micrófono
- % dd bs=8k count=4 </dev/audio >sample.au
- # sonido en play back
- % cat sample.au >/dev/audio
- ______________________________________________________________________
-
-
-
-
- Si pasa estos tests, puede estar seguro de que dispone de hardware y
- software que funciona correctamente. Si tiene problemas, lea la sección
- FAQ de este documento.
-
-
- 4. Aplicaciones de Sonido con soporte
-
-
- Debido a que la Guia del Usuario de Sonido en Linux describe con todo
- detalle las aplicaciones disponibles, aquí sólo se dará una muestra de
- los tipos de aplicaciones que vd puede manejar si tiene una tarjeta de
- sonido bajo sistema Linux.
-
- Como mínimo debería obtener las siguientes aplicaciones de sonido:
-
-
- o utilidad de conversión para los formatos de los ficheros de audio.
- (por ejemplo Sox)
-
- o utilidad de mezcla (por ejemplo aumix ó xmix)
-
- o lector/grabador de ficheros digitalizados (por ejemplo, play ó wavplay)
-
- o programa para ficheros MOD (por ejemplo tracker)
-
- o programa para ficheros MIDI (por ejemplo mp)
-
- De estas herramientas hay versiones en modo texto ó en modo gráfico.
- También hay algunas aplicaciones esotéricas (por ejemplo, sintetizadores
- de voz) que si lo desea, puede probarlos.
-
-
- 5. Respuestas a las preguntas más habituales
-
-
-
- Esta sección responde a alguna de las preguntas que normalmente se
- cuestionan en los grupos de noticias de Usenet y las listas de correos.
-
-
- 5.1. ¿ Qué son los ficheros de los dispositivos de sonido ?
-
-
- Estos son la mayor parte nombres de los ficheros de los dispositivos
- "estandar", algunas distribuciones de Linux pueden variar ligeramente
- los nombres.
-
-
- /dev/audio
- dispositivo de audio compatible con la estación de trabajo Sun
- (sólo una implementación parcial, no tiene soporte para el
- interface ioctl de Sun, justo la norma de codificación)
-
- /dev/dsp
- dispositivo para muestreos digitales
-
- /dev/mixer
- mezclador de sonido
-
- /dev/mixer1
- mezclador secundario de sonido
-
- /dev/patmgr0
- Patch Manager (no implementado)
-
- /dev/patmgr1
- Patch Manager (no implementado)
-
- /dev/sequencer
- secuenciador de nivel bajo para MIDI, FM, y acceso GUS
-
- /dev/sequencer2
- secuenciador de nivel alto (parcialmente implementado)
-
- /dev/midi00
- primer puerto MIDI
-
- /dev/midi01
- segundo puerto MIDI
-
- /dev/midi02
- tercer puerto MIDI
-
- /dev/midi03
- cuarto puerto MIDI
-
- /dev/sndstat
- cuando hace una lectura, se visualiza el estado del driver de sonido
-
- /dev/audio1
- para la segunda tarjeta de sonido
-
- /dev/dsp1
- para la segunda tarjeta de sonido
-
-
- El driver del altavoz del PC proporciona los siguientes dispositivos:
-
-
- /dev/pcaudio
- equivalente a /dev/audio
-
- /dev/pcsp
- equivalente a /dev/dsp
- /dev/pcmixer
- equivalente a /dev/mixer
-
-
- 5.2. ¿ Cómo puedo ejecutar una muestra de sonido ?
-
-
- Los ficheros de la estación de trabajo Sun (.au) pueden ejecutarse,
- enviandolos al dispositivo /dev/audio. Las muestras 'en vivo' envíelas
- a /dev/dsp. Es preferible utilizar un programa tal como play, ya que
- reconocerá la mayoría de los tipos de ficheros y fijará, en la tarjeta
- de sonido, el ratio correcto de muestreo, etc.
-
-
- 5.3. ¿ Cómo puedo grabar una muestra ?
-
-
- Cuando lee /dev/audio ó /dev/dsp, devuelve datos muestreados que pueden
- redireccionarse a un fichero. Un programa tal como 'vrec' trabaja mucho
- mejor, y controla el ratio de muestreo, duración, etc. También puede
- necesitar un programa de mezclas, para seleccionar el dispositivo de
- entrada apropiado.
-
-
- 5.4. ¿ Puedo tener más de una tarjeta de sonido ?
-
-
- Tiene soporte para dos tarjetas de sonido. Es factible instalar una
- Gravis UltraSound ó MPU-401 con una SoundBlaster, SoundBlaster Pro,
- SoundBlaster16 ó ProAudioSpectrum16. Ahora bien, no es posible tener
- una ProAudioSpectrum16 y una SoundBlaster al mismo tiempo (la PAS16
- tiene un emulador SB). Tampoco es posible tener más de una tarjeta del
- mismo tipo, al mismo tiempo - por ejemplo, una combinación de GUS más GUS
- no es posible.
-
- Puede cambiar los parámetros de la configuración de la tarjeta de sonido,
- al mismo tiempo que arranca el sistema, utilizando las opciones de la
- línea de comando, a partir de una cargador como puede ser LILO. Lea
- para más detalles, el fichero Readme.linux del núcleo del kernel de
- sonido.
-
-
- 5.5. Error: No hay ficheros ó directorio de los dispositivos de sonido
- Error: No such file or directory for sound devices
-
-
- Necesita crear los ficheros de los drivers de sonido. Lea la sección
- de como crear los ficheros de los dispositivos. Si tiene estos ficheros,
- asegurese que tienen fijados los números de dispositivos mayor y menor
- (algunas distribuciones antiguas de CD-ROM de Linux no crean
- correctamente los ficheros durante el proceso de instalación).
-
-
- 5.6. Error. No hay dispositivo para el hardware de sonido
- Error: No such device for sound devices
-
-
- No ha arrancado el sistema con un kernel que contenga el driver de
- sonido ó la configuración de la dirección I/O no coincide con su
- hardware. Compruebe que se está ejecutando un nuevo núcleo y verifique
- que los valores introducidos, cuando configura el driver de sonido,
- coinciden con el hardware.
-
-
- 5.7. Error: No hay espacio para los dispositivos de sonido
- Error: No space left on device for sound devices
-
-
- Esto puede suceder si intenta grabar datos en /dev/audio ó en /dev/dsp
- sin haber creado los ficheros de dispositivos necesarios. Ahora el
- dispositivo de sonido es un fichero normal, y ha llenado la partición
- de su disco. Necesita ejecutar el script descrito en la sección de
- Creación de los Ficheros de los Dispositivos, de este documento.
-
-
- 5.8. Error: dispositivo ocupado para el dispositivo de sonido
- Error: device busy for sound devices
-
-
- Sólo puede abrirse un proceso, al mismo tiempo, para un dispositivo de
- sonido. Otros procesos en curso están utilizando el dispositivo en
- cuestión. Una forma de determinar esto, es utilizar el comando 'fuser':
-
-
-
- ______________________________________________________________________
- % fuser -v /dev/dsp
- /dev/dsp: USER PID ACCESS COMMAND
- tranter 265 f.... tracker
- ______________________________________________________________________
-
-
-
-
- En el ejemplo anterior, el comando 'fuser' muestra que el proceso 265
- tiene un dispositivo abierto. Espere que este proceso acabe ó eliminelo
- para que pueda tener de nuevo acceso a este dispositivo, y así abrirlo.
-
-
- 5.9. ¡ Obtengo errores de dispositivos ocupados !
-
-
- De acuerdo con Brian Gough, las tarjetas SoundBlaster que utilizan el
- canal DMA 1 tienen un conflicto potencial con el driver de la cinta
- QIC-02, que también utilizan DMA 1, provocando errores de "dispositivo
- ocupado" ("device busy"). Si utiliza FTAPE, debe habilitar este driver.
- Conforme al documento FTAPE-HOWTO el driver QIC-02 no es esencial para la
- utilización de FTAPE; sólo se requiere el driver QIC-117. Reconfigure el
- núcleo para utilizar QIC-117, pero no el QIC-02, para que FTAPE y el
- driver de sonido coexistan.
-
- (la siguiente explicación ha sido proporcionada por Harald Albrecht
- albrecht@igpm.rwth-aachen.de)
-
- Algunos soportes para tarjetas de sonido utilizan el canal DMA 0. El
- programa de configuración para el driver de sonido le permite esto, y
- el kernel lo compila, pero el acceso al dispositivo de sonido le
- devuelve un mensaje de error "dispositivo ocupado" ("device busy").
-
- La razón es que el núcleo de Linux reserva el canal 0 de DMA para el
- refreso de la DRAM. Sin embargo esto ya no coincide con las placas base
- 386/486, porque utilizan su propia lógica de refresco. Puede corregirlo,
- cambiando esta línea en el fichero /usr/src/linux/kernel/dma.c:
-
-
-
- ______________________________________________________________________
- static volatile unsigned int dma_chan_busy[MAX_DMA_CHANNELS] = {
- 1, 0, 0, 0, 1, 0, 0, 0
- };
- ______________________________________________________________________
-
-
-
-
- Reemplace el primer 1 por un 0; esto habilitará el canal 0 de la DMA.
- ¡ No haga lo mismo con el canal 4 de la DMA porque no funcionará !.
- Ahora el código resultante debe parecerse a esto:
-
-
-
-
-
- ______________________________________________________________________
- static volatile unsigned int dma_chan_busy[MAX_DMA_CHANNELS] = {
- 0, 0, 0, 0, 1, 0, 0, 0
- };
- ______________________________________________________________________
-
-
-
-
- Recompile y arranque el sistema con el nuevo núcleo.
-
-
- 5.10. Playback parcial de un fichero de sonido digitalizado
-
-
- Usualmente el síntoma es que una muestra de sonido toca aproximadamente
- un segundo y se detiene completamente, ó le devuelve un mensaje de error
- "IRQ desconocida" ("missing IRQ") ó "interrupción de DMA" ("DMA timeout").
- En la mayor parte de los casos es que vd. tenga una incorrecta IRQ ó un
- valor incorrecta para el canal DMA. Verifique que la configuración del
- núcleo coincide con los valores de la tarjeta de sonido y que no provoquen
- conflicto con otras tarjetas.
-
- Otro síntoma son muestras de sonido que "dan vueltas". Esto sucede, en la
- mayoría de los casos, por un conflicto de IRQ.
-
-
- 5.11. Hay pausas cuando se ejecutan ficheros MOD
-
-
- La ejecución de ficheros MOD requiere una CPU potente. Este problema
- es debido a que está ejecutando muchos procesos, al mismo tiempo, ó que
- su sistema es demasiado lento para ejecutar estos ficheros en tiempo
- real. Las soluciones pueden ser:
-
-
- o intente hacer la ejecución con una muestra pequeña ó en modo mono.
-
- o elimine otros procesos.
-
- o compre un ordenador más rápido.
-
- o compre una tarjeta de sonido potente (p.e. la Gravis UltraSound)
-
- Si vd. posee una tarjeta Gravis UltraSound, debería utilizar uno de los
- programas escritos especificamente para la GUS (p.e. gmod).
-
-
- 5.12. Corriga los errores cuando compile las aplicaciones de sonido
-
-
- La versión 1.0c y anteriores de los drivers de sonido utilizan un diseño
- diferente e incompatible ioctl(). Obtenga un nuevo código fuente ó
- haga los cambios necesarios para adaptarlo al nuevo driver de sonido.
- Para más detalles, lea el fichero Readme del driver de sonido.
-
- Además asegurese que utiliza la última versión de soundcard.h y
- ultrasound.h cuando compile la aplicación. Lea las instrucciones de
- instalación al comienzo de este texto.
-
-
- 5.13. SEGV cuando ejecuta los ficheros de sonido que antes funcionaban
-
-
- Probablemente se deba al mismo problema descrito en la pregunta anterior.
-
-
-
- 5.14. ¿ Qué errores conocidos ó limitaciones tiene el driver de sonido ?
-
-
- Lea los ficheros Readme y CHANGELOG, incluidos con el fuente del núcleo
- del driver de sonido.
-
-
- 5.15. ¿ Qué versión del driver de sonido debo utilizar ?
-
-
- Necesita actualizarse si está utilizando la versión 1.0c ó anterior.
- La versión 1.0c no es compatible con las aplicaciones escritas para la
- versión 2.0 y posteriores.
-
- A partir de la versión 2.0 los cambios no son significativos, así si vd.
- no tiene problemas y la versión que utiliza cumple todas sus expectativas,
- y no necesita más, entonces no hace falta que cambie a una versión
- reciente (la última data de Septiembre 1.994).
-
- La última versión oficial la encontrará en la última distribución de
- Linux. También hallará algunos versiones beta. Si el número de la
- versión es menor de la 2.9, entonces es una versión fiable. Cualquier
- versión del driver que sea del tipo 2.99.xx, es una versión experimental
- y no está completamente implementada.
-
- Si ejecuta DOOM bajo Linux, lea las cuestiones relativas en este
- documento.
-
- Si está interesado en el desarrollo de drivers de sonido, unase a los
- activistas de Linux en el foro SOUND.
-
-
- 5.16. ¿ Cuales son las opciones de configuración del driver de sonido ?
-
-
- Durante el proceso de configuración del driver del sonido, hay un programa
- que se compila y ejecuta. Este programa le hará una serie de preguntas y
- generará el fichero de cabecera local.h, que define la configuración de la
- tarjeta de sonido.
-
- El fichero de configuración define (ó no define) los siguientes símbolos:
-
-
- Símbolo Significado
- ======= ===========
- KERNEL_SOUNDCARD habilita/inhabilita el driver de sonido
- EXCLUDE_PAS soporte para ProAudioSpectrum
- EXCLUDE_SB soporte para SoundBlaster
- EXCLUDE_ADLIB soporte para AdLib
- EXCLUDE_GUS soporte para Gravis UltraSound
- EXCLUDE_MPU401 soporte para el interface MPU-401 MIDI
- EXCLUDE_UART6850 soporte para UART 6850 MIDI
- EXCLUDE_PSS soporte para Sistema de Sonido Profesional
- EXCLUDE_GUS16 soporte para Gravis UltraSound
- EXCLUDE_GUSMAX soporte para Gravis UltraSound Max
- EXCLUDE_MSS soporte para Microsoft Sound System
- EXCLUDE_SBPRO soporte para SoundBlaster Pro
- EXCLUDE_SB16 soporte para SoundBlaster 16
- EXCLUDE_AUDIO soporte para voz digitalizado
- EXCLUDE_MIDI soporte para interface MIDI
- EXCLUDE_YM3812 soporte para sintetizador FM (YM3812/OPL-3)
- EXCLUDE_SEQUENCER soporte para secuenciador MIDI
- EXCLUDE_PRO_MIDI soporte para SoundBlaster Pro MIDI
- EXCLUDE_CHIP_MIDI soporte para MIDI en CHIP
- SBC_BASE 0x220 dirección base de la SoundBlaster I/O
- SBC_IRQ número de la IRQ en la SoundBlaster
- SBC_DMA canal DMA en la SoundBlaster
- SB16_DMA canal DMA en la SoundBlaster 16
- SB16_MIDI_BASE dirección base del puerto de SoundBlaster 16 MIDI
- PAS_IRQ número de la IRQ de la ProAudioSpectrum
- PAS_DMA canal DMA de la ProAudioSpectrum
- GUS_IRQ número de la IRQ de la Gravis UltraSound
- GUS_DMA canal DMA de la Gravis UltraSound
- GUS_BASE dirección base de la Gravis UltraSound
- MPU_IRQ número de la IRQ de la MPU-401
- MPU_BASE dirección base del puerto de MPU-401
- DSP_BUFFSIZE tamaño del buffer de la DMA
-
-
-
- Otros también pueden definirse y crearse; coloque datos tales como el
- nivel de revisión del driver de sonido y la fecha de cuando se configuró
- y ejecutó.
-
- Hay otros parámetros que no los coloca el programa de configuración. Si
- necesita cambiarlos, edite el fichero sound_config.h.
-
- Para inhabilitar el driver de sonido, ejecute 'make config' y responda
- "no" a la pregunta "¿ Soporte para tarjeta de sonido ?" ("Sound card
- support?".
-
-
- 5.17. ¿ Qué mejoras están previstas para el driver de sonido ?
-
-
- El driver de sonido no se ha hecho ex-profeso para Linux, también tiene
- soporte para los sistemas operativos Unix basados en la plataforma Intel.
- El conjunto ahora se denomina "VoxWare". Algunas de las mejoras que se
- están considerando son:
-
-
- o implementación completa del soporte MIDI
-
- o soporte para solucionar errores
-
- o documentación del driver de la tarjeta de sonido (Guía del Hacker)
-
- o soporte para nuevas tarjetas de sonido
-
- o miscelanea de errores fijos
-
- 5.18. ¿ Donde se localiza la documentación sobre el driver de sonido
- ioctls() etc. ?
-
-
- La documentación se encuentra en la Guía del Hacker en VoxWare,
- generalmente disponible en modo borrador. La última versión es draft 2,
- y puede localizarse en nic.funet.fi en /pub/OS/linux/ALPHA/sound.
- Observe que este directorio es "oculto" y no se mostrará en el listado de
- directorios. Si hace "cd" al directorio y utiliza el comando "dir" en
- FTP, los ficheros se visualizarán.
-
-
- 5.19. ¿ Qué requerimientos de CPU son necesarios para tocar ó grabar
- sin pausas ?
-
-
- No hay una respuesta fácil para esta pregunta, y depende de:
-
-
- o si utiliza muestras PCM ó síntesis FM
-
- o ritmo de muestra y tamaño de la muestra
-
- o que aplicación se utiliza para tocar ó grabar
-
- o Hardware de la tarjeta de sonido
-
- o ratio de I/O del disco, velocidad de la CPU, tamaño del caché, etc.
-
- Por lo general, cualquier máquina 386 debería ejecutar muestras ó música
- sintetizada FM, en una tarjeta de sonido de 8 bits.
-
- Ejecutando ficheros MOD se consumen muchos recursos de la CPU. Algunas
- mediciones experimentales muestran que ejecutar a 44 kHz requiere más del
- 40% de la velocidad de un 486/50 y un 386/25 dificilmente puede ejecutar
- más de 22 kHz (to esto con una tarjeta de sonido de 8 bits, tal como la
- SoundBlaster). Una tarjeta tal como la Gravis UltraSound posee más
- funciones implementadas en el hardware, y por lo tanto necesita menos
- requerimientos de la CPU.
-
- Asumimos, para lo dicho en el párrafo anterior, que la CPU no está
- ejecutando otras tareas que requieran un proceso intenso de la CPU.
-
- Convertir ficheros de sonido ó añadir efectos es mucho más rápido si
- nuestro sistema utiliza un coprocesador. El driver del núcleo, por si
- mismo, no hace cálculos en coma flotante.
-
-
- 5.20. Problemas con una PAS16 y un adaptador host Adaptec 1542 SCSI
-
-
- (la siguiente explicación la ha proporcionado seeker@indirect.com)
-
- Linux sólo reconoce la 1542 en la dirección 330 (por defecto) ó la 333,
- y la PAS sólo permite la emulación MPU-401 en la dirección 330. Aún
- cuando vd. inhabilite por software la MPU-401, habrá un conflicto con la
- 1542 si utiliza las direcciones tomadas por defecto. Moviendo la 1542 a
- la dirección 333 todo funcionará perfectamente.
-
-
- Adicionalmente, la 1542 y la PAS-16 efectuan DMA a 16-bits, así si
- ejecuta una muestra a 16 bits 44 kHz estéreo y graba el fichero en una
- unidad SCSI por medio de una 1542, entonces tendrá problemas. Las DMAs
- se solapan y no hay tiempo suficiente para el refresco de la RAM, y por
- consiguiente se visualizará el mensaje "ERROR DE PARIDAD - SISTEMA
- PARADO" (``PARITY ERROR - SYSTEM HALTED'', sin saber cual ha sido la
- causa. Esto ha salido mal debido a que hay algunos vendedores del
- QIC-117 que recomiendan fijar un número en el bus on/off para que sea
- igual al de la 1542. Obtenga el programa SCSISEL.EXE de la BBS de Adaptec,
- ó de red INTERNET, y reduzca el valor de BUS ON ó incremente el valor en
- BUS OFF hasta que el problema se soluciones. SCSISEL cambia los valores
- de la EEPROM, y de esta forma no hará falta incluir una línea en el
- CONFIG.SYS, y trabajará sin problemas bajo Linux.
-
-
- Ultimo problema - los antiguos chipset Symphony reducen drasticamente
- el tiempo del número de ciclos I/O para aumentar los accesos al bus.
- Ninguna de las diferentes tarjetas que se han probado ha habido
- problemas, excepto con la PAS-16. La BBS de Media Vision posee el programa
- SYMPFIX.EXE que ha de solventar el problema, por medio de ejecutar un
- bit de diagnóstico en la controladora del bus del Symphony, ahora bien,
- esto no es una garantía segura. Puede necesitar lo siguiente:
-
-
- o obtenga la placa base de su distribuidor para reemplazar el chip
- antiguo,
-
- o reemplace la placa base, ó
-
- o compre una tarjeta de sonido diferente
-
- Young Microsystems actualiza las placas que ellos importaron por 30
- dolares USA; otros vendedores harán lo mismo, si comprueban que ellos
- han importado las placas base. El problema está en el chip del
- interface del bus de la ProAudio (en lo que al autor le concierne);
- nadie compra una tarjeta de 120 dólares, y la enchufa en un AT a 6 Mhz.
- La mayoría la utilizará en máquinas 386/486 que funcionan a 25-40MHz,
- y si los chips se han diseñado correctamente, deben manejar como mínimo
- velocidades de bus de 12 MHz.
-
-
- El primer problema depende del chipset utilizado en su placa base,
- el cual acelera el bus y fija otros valores de la BIOS. El segundo
- problema depende de los valores de la opción de refresco (oculto ó
- sincrono), la velocidad de la DMA 1542 y (posiblemente) la velocidad del
- bus I/O. El tercero puede determinarse llamando a Media Vision y
- preguntar que chip Symphony es incompatible con su diseño.
-
-
-
- 5.21. Problemas con el sintetizador FM en una SoundBlaster Pro 1
-
-
- La nueva SB Pro tiene un chip OPL-3 FM, y sin embargo la versión antigua
- 1 utiliza un OPL-2. El driver de sonido asume la presencia OPL-3. La
- versión 2.5 del driver de sonido corrije este problema.
-
-
- 5.22. ¿ Tiene soporte la GUS-MAX ?
-
-
- Con el driver de sonido 2.5a, no tiene soporte implicito la GUS-MAX, pero
- trabajará parcialmente. El driver no reconoce las mejoras, tales como el
- mezclador ó el muestreo de 16 bits. Arranque su sistema e inicialice la
- tarjeta bajo MS-DOS y a continuación reinicialice el ordenador, pero ahora
- bajo Linux (utilizando ctrl-alt-del), y así funcionará.
-
- Hay soporte para la GUS-MAX a partir del driver de sonido 2.9.
-
-
-
-
- 5.23. ¿ Que sucede si no hay soporte para mi tarjeta de sonido ?
-
-
- Primero, asegurese que realmente no tiene soporte para su tarjeta de
- sonido. Unas cuantas de tarjetas de sonido son compatibles con las
- tarjetas soportadas (por ejemplo, Logitech SoundMan 16 es compatible con
- la ProAudioSpectrum 16). Pregunte en la red ó en canal SOUND de los
- activistas de Linux.
-
- Si su tarjeta, verdaderamente, no está soportada, aquí tiene algunas
- opciones:
-
- o reemplacela por una tarjeta de sonido que tenga soporte.
-
- o escriba vd. mismo el driver.
-
- o escriba a Hannu Savolainen para que añada soporte al driver de sonido.
-
- La Guía del Hacker de Voxware tiene algunos comentarios sobre las
- tarjetas que tendrán soporte en un futuro.
-
-
- 5.24. ¿ Es posible leer y escribir muestras simultaneamente ?
-
-
- El hardware tiene sus limitaciones, esto no es posible con la mayoría
- de las tarjetas de sonido. La única tarjeta soportada que puede hacer
- esto es la ProAudioSpectrum16. Para más información lea la sección
- "modo bidireccional" en la Guia del Hacker de Voxware.
-
-
- 5.25. Mi SB16 está colocada en la IRQ 2, pero la configuración no
- permite este valor.
-
-
- En las máquinas 286, la interrupción IRQ 2 está en cascada a la
- controladora de la interrupción secundaria. Es equivalente a la IRQ 9.
-
-
- 5.26. ¿ Están soportadas la SoundBlaster AWE32 ó la SoundBlaster16 ASP ?
-
-
- Creative Labs no está dispuesta a dar información sobre la programación
- de los chips ASP y Emu de sus tarjetas. A menos que cambien su política,
- de momento no hay soporte bajo Linux.
-
- La tarjeta Gravis UltraSound tiene capacidad similar a la AWE32, y tiene
- soporte bajo Linux. Las tarjetas basadas en otros DSPs, tales como la
- Analog Devices ADSP-21xx en un futuro tendrán soporte.
-
-
- 5.27. Si ejecuto Linux, después de arrancar el DOS, obtengo errores y/o
- las aplicaciones de sonido no trabajan correcamente.
-
-
- Esto acontece después de una reinicialización desde el DOS, por
- software. Algunas veces los mensajes de error son engañosos, y se
- refieren a una mala configuración del CONFIG.SYS .
-
- La mayoría de las tarjetas de sonido actuales tienen software
- programable para modificar los valores de IRQ y DMA. Si vd. utiliza
- valores diferentes para Linux y MS-DOS/Windows, entonces puede tener
- problemas. Algunas tarjetas de sonido no aceptan nuevos parámetros sin
- haber hecho previamente un reseteo (por ejemplo, encender de nuevo el
- ordenador ó pulsar la tecla de reset).
-
- La solución rápida para este problema es hacer un reseteo completo del
- sistema, utilizando para ello la tecla de 'reset' ó encender de nuevo el
- ordenador si la reinicialización se ha efectuado por software (p.ejemplo
- Ctrl-Alt-Del).
-
- La solución correcta es asegurarse de que se utilice la misma IRQ y DMA
- tanto en MS-DOS como en Linux (ó no utilice el DOS :-).
-
-
- 5.28. ¿ Vd. dice: necesito configurar y establecer un núcleo - cómo lo
- hago ?
-
-
- Esto no es el núcleo HOWTO. A menos que uno lo haya escrito, intente
- leer el fichero /usr/src/linux/README; es lo más razonable.
-
- Si vd. realmente no quiere compilar un kernel, debería ser capaz de
- encontrar un núcleo precompilado, que tenga los drivers que vd. necesita
- (por ejemplo, la serie "Q" de Slackware).
-
-
- 5.29. Problemas al ejecutar DOOM bajo Linux
-
-
- Estas notas pueden ser de interés para los usuarios de la versión
- reciente del juego DOOM para Linux.
-
- Para correcta audición de sonido, necesitará la versión 2.90 ó posterior
- del driver de sonido; que tiene soporte para el nuevo modo de tiempo
- real del DOOM.
-
- Las muestras de sonido son de 16 bits. Si vd. posee una tarjeta de sonido
- de 8 bits, localice un programa llamad sndcvt que convierte los datos de
- 16 a 8 bits. También puede tener un parche del server del sonido DOOM;
- los detalles se explicab en el fichero README.
-
- Si la ejecución del DOOM es lenta en su sistema, desactive el sonido
- (renombrando el fichero sndserver) y verá como mejora.
-
- A última hora de escribir este original en inglés, DOOM para Linux no
- posee música de fondo.
-
-
- 5.30. ¿ Como puedo reducir el ruido producido en mi tarjeta de sonido ?
-
-
- Utilizando un cable blindado de buena calidad e intente colocar la tarjeta
- de sonido en diferentes slots. Si la tarjeta de sonido posee un control
- de volumen, intente probar diferentes posiciones .
-
- Utilizando un programa de mezclas, asegurese que la ganancia de las
- entradas (por ejemplo, el micrófono) están colocadas a cero.
-
- Algunas tarjetas de sonido no tienen un buen blindaje y buena masa; y
- por lo tanto son propensas a captar todo el ruido posible.
-
- Finalmente, en mi sistema he encontrado que la línea de comando del núcleo
- no-hlt reduce el nivel de ruido. Este le dice al núcleo que no utilice
- la instrucción la instrucción de parada cuando esté inactivo el proceso.
- Intente hacer esto manualmente cuando arranque el sistema, ó añada en el
- fichero de configuración LILO el comando "no-hlt".
-
-
- 5.31. Ejecuto sonidos, pero no los graba.
-
-
- Si puede ejecutar sonido pero no grabarlo, intente estos pasos:
-
-
- o utilice un programa de mezcla para seleccionar el dispositivo
- apropiado (por ejemplo, el micrófono).
-
- o utilice el mezclador para fijar la entrada de ganancia al máximo.
-
- o Si puede, intente hace una grabación bajo MS-DOS para determinar si
- el problema está en el hardware.
-
-
- 5.32. Mi tarjeta de sonido "compatible" sólo funciona si la inicializo
- primero bajo MS-DOS.
-
-
- Algunas tarjetas de sonido clónicas no son 100% compatibles a nivel de
- registros; algunas contienen circuitos extras tales como mezcladores.
- Para poder utilizarlas bajo Linux debe primero, inicializarla bajo
- MS-DOS, y después arrancar Linux (p.e. Ctrl-Alt-Delete).
-
- Un usuario comentó que se obtienen mejores resultados si se utiliza
- LOADLIN en vez de LILO, una vez que se ha inicializado la tarjeta de
- sonido bajo MS-DOS (utiliza la tarjeta de sonido Diamond).,
-
- La solución mejor es enterarse, por medio del vendedor, que diferencias
- hay y si tienen soporte añadido a través de drivers de sonido. Esto es
- válido para la Sound Galaxy NX Pro.